package com.kurt.dto.update;

import jakarta.validation.constraints.NotNull;
import lombok.Data;

/**
 * 驾驶员更新请求DTO
 * 用于接收更新驾驶员的请求参数
 */
@Data
public class DriverUpdateRequest extends BaseUpdate {

    /**
     * 驾驶员ID
     */
    @NotNull(message = "驾驶员ID不能为空")
    private Long id;

    /**
     * 姓名
     */
    private String name;

    /**
     * 身份证号
     */
    private String idCard;

    /**
     * 联系电话
     */
    private String phone;

    /**
     * 驾驶证号
     */
    private String driverLicense;

    /**
     * 组织ID
     */
    private Long organizationId;

    /**
     * 状态
     */
    private Integer status;

    /**
     * 备注
     */
    private String remark;

    /**
     * 驾驶员扩展信息
     */
    private DriverExtensionUpdateRequest driverExtension;

    /**
     * 驾驶员扩展信息更新请求DTO
     */
    @Data
    public static class DriverExtensionUpdateRequest {

        /**
         * 生日
         */
        private java.time.LocalDate birthday;

        /**
         * 地址
         */
        private String address;

        /**
         * 紧急联系人
         */
        private String emergencyContact;

        /**
         * 紧急联系电话
         */
        private String emergencyPhone;
    }
}
